import Layout from "@/pages/Layout"
import Login from "@/pages/Login"

import { createBrowserRouter } from "react-router-dom"
import { AuthRoute } from "@/components/AuthRoute"
// import Home from "@/pages/Home"
// import Article from "@/pages/Article"
// import Publish from "@/pages/Publish"

// 懒加载 lazy函数对组件进行导入 再用suspense标签包裹 fallback为加载中
import { Suspense, lazy } from "react"
const Home = lazy(() => import("@/pages/Home"))
const Article = lazy(() => import("@/pages/Article"))
const Publish = lazy(() => import("@/pages/Publish"))

const router = createBrowserRouter([
  {
    path: "/",
    element: <AuthRoute> <Layout /> </AuthRoute>,
    children: [
      {
        path: 'home',
        element: <Suspense fallback={'加载中'}> <Home/> </Suspense>
      },
      {
        path: 'article',
        element: <Suspense fallback={'加载中'}><Article/></Suspense>
      },
      {
        path: 'publish',
        element: <Suspense fallback={'加载中'}><Publish/></Suspense>
      },
    ]
  },
  {
    path: "/login",
    element: <Login />
  }
])

export default router